<?php


namespace app\controller;


use app\model\User;
use think\facade\View;
use const http\Client\Curl\VERSIONS;

class show
{
    public $name = 'lcy';
    public $age = 20;
    const PI = 3.14;
    public function index(){
        require 'test/1.php';
    }
    public function sote(){
        //传递变量
//        View::assign('name','Mr.ghj');
        View::assign([
            'name'=>'ghj',
            'age'=>'20',
            'email'=>'1299@qq.com'
        ]);
        //也可以通过fetch()第二个参数传递变量
//        return View::fetch('index',[
//            'name'=>'LCY'
//        ]);


//        return View::fetch('index');

        //助手函数view() 和 View::fetch() 作用一样

        //使用filter()方法，对所有模板的变量进行过滤操作
//        return View::filter(function ($content){
//            return strtoupper($content);
//        })->fetch('index');

//        return view('index')->filter(
//            function ($content){
//                return strtoupper($content);
//            }
//        );
    }

    public function vcon(){
        //局部修改模板引擎配置
//        View::config(['view_dir_name'=>'view2']);
//        return View::fetch('index');

        //调用其他控制器的模板文件
//        return View::fetch('Address/index');

        //多模块（多应用）模块下，也可以实现跨模块调用模板文件
//        return View::fetch('admin@User/index');

        //如果直接在view根目录下的模板文件，用一个斜杠Kauai设定即可调用
//        return View::fetch('/index');

        //如果想调用public公共目录的模板文件，用../public 后面跟着URL就行
//        return View::fetch('../public/test/test.html');

        //弃用模板引擎 ，用原生php
        //此时return之前设置的变量或者模板变量都无效，只能通过fetch()第二参数传递
        return View::engine('php')->fetch('index',[
            'name'=>'ghj'
        ]);
    }

    public function fn(){
        return '方法';
    }

    public function output(){
        $arr = ['name'=>'ghj','age'=>20];
        return View::fetch('output',[
            'arr'=>$arr,
            'obj'=>$this,
            'password'=>123456,
            'time'=>time(),
            'number'=>10
        ]);
    }


    //循环
    public function loop(){
        $list = User::select();
        return View::fetch('loop',[
            'list'=>$list
        ]);
    }

    //比较
    public function eq(){
        return View::fetch('eq',[
            'name'=>'ghj',
            'user'=>'ghj'
        ]);
    }

    //条件
    public function condition(){
        return View::fetch('condition',[
           'number'=>-1
        ]);
    }

    public function block(){
        return View::fetch('block');
    }

    public function form(){
        return View::fetch('form');
    }
}